home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Environments / Clean 1.2.4 / MacInterface / quickdraw.dcl < prev    next >
Encoding:
Modula Definition  |  1997-01-15  |  5.5 KB  |  189 lines  |  [TEXT/3PRM]

  1. definition module quickdraw;
  2.  
  3. import mac_types;
  4.  
  5. BlackColor:==33;
  6. WhiteColor:==30;
  7. RedColor:==205;
  8. GreenColor:==341;
  9. BlueColor:==409;
  10. CyanColor:==273;
  11. MagentaColor:== 137;
  12. YellowColor:== 69;
  13.  
  14. PatCopy :== 8;
  15. PatOr :== 9;
  16. PatXor :== 10;
  17. PatBic :== 11;
  18. NotPatCopy :== 12;
  19. NotPatOr :== 13;
  20. NotPatXor :== 14;
  21. NotPatBic :== 15;
  22. PatHilite :== 50;
  23.  
  24. White :== (0,0);
  25. Black :== (-1,-1);
  26. Gray :== (1437226410,1437226410);
  27. LtGray :== (-2011002846,-2011002846);
  28. DkGray :== (2011002845,2011002845);
  29.  
  30. Bold :== 1;
  31. Italic :== 2;
  32. Underline :== 4;
  33. Outline :== 8;
  34. Shadow :== 16;
  35. Condense :== 32;
  36. Extend :== 64;
  37.  
  38. SrcCopy :== 0;
  39. SrcOr :== 1;
  40. SrcXor :== 2;
  41. SrcBic :== 3;
  42.  
  43. ScrnHResAddress :== 260;
  44. ScrnVResAddress :== 258;
  45.  
  46. ::    GrafPtr :== Int;
  47. ::    PicHandle :== Int;
  48. ::    PolyHandle :== Int;
  49. ::    RGBColor :== (!Int,!Int,!Int);
  50.  
  51. //    GrafPort Routines
  52.  
  53. QSetPort :: !GrafPtr !Toolbox -> Toolbox;
  54. QGetPort :: !Toolbox -> (!GrafPtr,!Toolbox);
  55. QSetOrigin :: !Int !Int !Toolbox -> Toolbox;
  56. QSetClip :: !RgnHandle !Toolbox -> Toolbox;
  57. QGetClip :: !RgnHandle !Toolbox -> (!RgnHandle,!Toolbox);
  58. QClipRect :: !Rect !Toolbox -> Toolbox;
  59.  
  60. //    Cursor-Handling Routines
  61.  
  62. QInitCursor :: !Toolbox -> Toolbox;
  63. QSetCursor :: !Ptr !Toolbox -> Toolbox;
  64. QHideCursor :: !Toolbox -> Toolbox;
  65. QShowCursor :: !Toolbox -> Toolbox;
  66. QObscureCursor :: !Toolbox -> Toolbox;
  67.  
  68. //    Pen and Line-Drawing Routines
  69.  
  70. QHidePen :: !Toolbox -> Toolbox;
  71. QShowPen :: !Toolbox -> Toolbox;
  72. QGetPen :: !Toolbox -> (!Int,!Int,!Toolbox);
  73. QPenSize :: !Int !Int !Toolbox -> Toolbox;
  74. QPenMode :: !Int !Toolbox -> Toolbox;
  75. QPenPat :: !(!Int,!Int) !Toolbox -> Toolbox;
  76. QPenNormal :: !Toolbox -> Toolbox;
  77. QMoveTo :: !Int !Int !Toolbox -> Toolbox;
  78. QMove :: !Int !Int !Toolbox -> Toolbox;
  79. QLineTo :: !Int !Int !Toolbox -> Toolbox;
  80. QLine :: !Int !Int !Toolbox -> Toolbox;
  81.  
  82. //    Text-Drawing Routines
  83.  
  84. QTextFont :: !Int !Toolbox -> Toolbox;
  85. QTextFace :: !Int !Toolbox -> Toolbox;
  86. QTextMode :: !Int !Toolbox -> Toolbox;
  87. QTextSize :: !Int !Toolbox -> Toolbox;
  88. QDrawChar :: !Char !Toolbox -> Toolbox;
  89. QDrawString :: !{#Char} !Toolbox -> Toolbox;
  90. QCharWidth :: !Char !Toolbox -> (!Int, !Toolbox);
  91. QStringWidth :: !{#Char} !Toolbox -> (!Int, !Toolbox);
  92. QGetFontInfo :: !Toolbox -> (!Int,!Int,!Int,!Int,!Toolbox);
  93.  
  94. //    Drawing in Color
  95.  
  96. QForeColor :: !Int !Toolbox -> Toolbox;
  97. QRGBBackColor :: !RGBColor !Toolbox -> Toolbox;
  98. QRGBForeColor :: !RGBColor !Toolbox -> Toolbox;
  99. QSetCPixel :: !Int !Int !RGBColor !Toolbox -> Toolbox;
  100. QBackColor :: !Int !Toolbox -> Toolbox;
  101.  
  102. //    Calculations with Rectangles
  103.  
  104. //    Graphic Operations on Rectangles
  105.  
  106. QFrameRect :: !Rect !Toolbox -> Toolbox;
  107. QPaintRect :: !Rect !Toolbox -> Toolbox;
  108. QEraseRect :: !Rect !Toolbox -> Toolbox;
  109. QInvertRect :: !Rect !Toolbox -> Toolbox;
  110.  
  111. //    Graphic operations on Ovals
  112.  
  113. QFrameOval :: !Rect !Toolbox -> Toolbox;
  114. QPaintOval :: !Rect !Toolbox -> Toolbox;
  115. QEraseOval :: !Rect !Toolbox -> Toolbox;
  116. QInvertOval :: !Rect !Toolbox -> Toolbox;
  117.  
  118. //    Graphic Operations on Rounded-Corner Rectangles
  119.  
  120. QFrameRoundRect :: !Rect !Int !Int !Toolbox -> Toolbox;
  121. QPaintRoundRect :: !Rect !Int !Int !Toolbox -> Toolbox;
  122. QEraseRoundRect :: !Rect !Int !Int !Toolbox -> Toolbox;
  123. QInvertRoundRect :: !Rect !Int !Int !Toolbox -> Toolbox;
  124.  
  125. //    Graphic Operations on Arcs and Wedges
  126.  
  127. QFrameArc :: !Rect !Int !Int !Toolbox -> Toolbox;
  128. QPaintArc :: !Rect !Int !Int !Toolbox -> Toolbox;
  129. QEraseArc :: !Rect !Int !Int !Toolbox -> Toolbox;
  130. QInvertArc :: !Rect !Int !Int !Toolbox -> Toolbox;
  131.  
  132. //    Calculations with Regions
  133.  
  134. QNewRgn :: !Toolbox -> (!RgnHandle, !Toolbox);
  135. QOpenRgn :: !RgnHandle !Toolbox -> Toolbox;
  136. QCloseRgn :: !RgnHandle !Toolbox -> Toolbox;
  137. QDisposeRgn :: !RgnHandle !Toolbox -> Toolbox;
  138. QRectRgn :: !RgnHandle !Rect !Toolbox -> Toolbox;
  139. QSectRgn :: !RgnHandle !RgnHandle !RgnHandle !Toolbox -> (!RgnHandle, !Toolbox);
  140. QUnionRgn :: !RgnHandle !RgnHandle !RgnHandle !Toolbox -> (!RgnHandle, !Toolbox);
  141. QDiffRgn :: !RgnHandle !RgnHandle !RgnHandle !Toolbox -> (!RgnHandle, !Toolbox);
  142. QPtInRgn :: !(!Int,!Int) !RgnHandle !Toolbox -> (!Bool, !Toolbox);
  143. QEmptyRgn :: !RgnHandle !Toolbox -> (!Bool, !Toolbox);
  144.  
  145. //    Graphic Operations on Regions
  146.  
  147. QFrameRgn :: !RgnHandle !Toolbox -> Toolbox;
  148. QPaintRgn :: !RgnHandle !Toolbox -> Toolbox;
  149. QEraseRgn :: !RgnHandle !Toolbox -> Toolbox;
  150. QInvertRgn :: !RgnHandle !Toolbox -> Toolbox;
  151.  
  152. //    Bit Transfer Operations
  153.  
  154. QScrollRect :: !Rect !Int !Int !RgnHandle !Toolbox -> Toolbox;
  155. CopyBits :: !Ptr !Int !Rect !Ptr !Int !Rect !Rect !Rect !Int !RgnHandle !Toolbox -> Toolbox;
  156.     
  157. //    Pictures
  158.  
  159. QOpenPicture :: !Rect !Toolbox -> (!PicHandle, !Toolbox);
  160. QClosePicture :: !PicHandle !Toolbox -> Toolbox;
  161. QDrawPicture :: !PicHandle !Rect !Toolbox -> Toolbox;
  162. QKillPicture :: !PicHandle !Toolbox -> Toolbox;
  163.  
  164. //    Calculations with Polygons
  165.  
  166. QOpenPoly :: !Toolbox -> (!PolyHandle, !Toolbox);
  167. QClosePoly :: !PolyHandle !Toolbox -> Toolbox;
  168. QKillPoly :: !PolyHandle !Toolbox -> Toolbox;
  169. QOffsetPoly :: !PolyHandle !Int !Int !Toolbox -> Toolbox;
  170. QOffsetRgn :: !RgnHandle !Int !Int !Toolbox -> Toolbox;
  171.  
  172. //    Graphic Operations on Polygons
  173.  
  174. QFramePoly :: !PolyHandle !Toolbox -> Toolbox;
  175. QPaintPoly :: !PolyHandle !Toolbox -> Toolbox;
  176. QErasePoly :: !PolyHandle !Toolbox -> Toolbox;
  177. QInvertPoly :: !PolyHandle !Toolbox -> Toolbox;
  178.  
  179. //    Calculations with Points
  180.  
  181. //    Miscellaneous Routines
  182.  
  183. QLocalToGlobal :: !Int !Int !Toolbox -> (!Int,!Int,!Toolbox);
  184. QGlobalToLocal :: !Int !Int !Toolbox -> (!Int,!Int,!Toolbox);
  185. QScreenRect :: !Toolbox -> (!Int,!Int,!Int,!Int,!Toolbox);
  186. HasColorQD    :: !Toolbox -> (!Bool,!Toolbox);
  187. QStdTxMeas    :: !Int !{#Char} !(!Int,!Int) !(!Int,!Int) !(!Int,!Int,!Int,!Int) !Toolbox
  188.             -> (!Int,!(!Int,!Int),!(!Int,!Int),!(!Int,!Int,!Int,!Int),!Toolbox);
  189.